package com.geologyoa.service;

import java.util.List;

import net.sf.json.JSONObject;

import com.geologyoa.domain.Cjdw01;
import com.geologyoa.domain.Dwqk01;
import com.geologyoa.domain.Dwzz01;
import com.geologyoa.domain.Function;
import com.geologyoa.domain.Power;
import com.geologyoa.domain.RoleAndPow;
import com.geologyoa.domain.Roles;
import com.geologyoa.domain.UserInfo;
import com.geologyoa.domain.Wpdj01;
import com.geologyoa.domain.Wpfj01;
import com.geologyoa.domain.Xmfj01;
import com.geologyoa.domain.Xmqk01;
import com.geologyoa.domain.Xmqk01New;
import com.geologyoa.domain.ZHD01;
import com.geologyoa.domain.Zjpf01;
import com.geologyoa.domain.xmqkQueryObj;

public interface SystemManager {
	public Boolean AddDwqk(Dwqk01 dwqk01);
	public Boolean CheckDwqkByName(String DWQK0103);
	public Boolean CheckDwqkByIdAndName(int id,String DWQK0103);
	public Boolean CheckDwqkByIdAndZZType(int id,String zzType);
	public Boolean CheckDwqkByIdAndZZTypeExceptZZid(int zzid,int dwid,String zzType);
	
	public List<Dwqk01> SerachDwqk(String DWQK0102,String DWQK0103,String DWQK0104s,String DWQK0104e,String DWQK0105, String DWQK0107,String DWQK0108,String DWQK0110,String DWQK0116,String DWQK0117);
	public List<Dwqk01> SerachDwqkByZZType(String DWQK0103,String DWQK0104,String DWQK0107,String DWQK0110,String ZZType,String ZZLevel);
	
	public Boolean UpdateDwqk(Dwqk01 dwqk01);
	public Boolean DelDwqk(String DWQK0101);
	public List<Dwqk01> SearchAllDwqk();
	public boolean AddDwzz(Dwzz01 dwzz01);
	public List<Dwzz01> SerachDwzz(String DWZZ0102,String DWZZ0103,String DWZZ0104,String DWZZ0105,String DWZZ0106,String DWZZ0109);
	public Boolean DelDwzz(String DWZZ0101);
	public  Boolean CheckWpdj(String WPDJ0107);
	public Boolean CheckWpdjByNameExceptId(int id,String name);
	public Boolean AddWpdj(Wpdj01 wpdj01);
	public   List<Wpfj01> SearchWpfj(String xmName,String wdName,String type);
	public  List<Wpdj01> SerachWpdj(String WPDJ0102,String WPDJ0103, String WPDJ0104, String WPDJ0105, String WPDJ0107, String WPDJ0108, String WPDJ0111,String  WPDJ0113min, String WPDJ0113max,String  WPDJ0114, String WPDJ0116,String  WPDJ0119s, String WPDJ0119e,String WPDJ0122s,String WPDJ0122e,String WPDJ0118);
	public  Boolean UpdateDwzz(Dwzz01 dwzz01);
	 public Boolean DelWpdj(String wpdj0101);
	 public Boolean UpdateWpdj(Wpdj01 wpdj01);
	 public List<Wpfj01> SearchFillPathWpfj(String WPFJ0102,String WPFJ0104);
	 public Boolean AddRoles(Roles roles);
	 public List<Roles> SearchAllRoles();
	 public Boolean CheckRoles(String RoleName);
	 public Boolean CheckRolesExceptId(String RoleName,String roleid);
	 
	 public  Boolean CheckUserInfo(String username);
	 public  Boolean CheckUserInfoExceptId(String username,String userId);
	 
	public  Boolean AddUserInfo(UserInfo userInfo);
	public  List<Function> SearchAllFunction();
	public Boolean AddPower(Power power);
	public  List<UserInfo> SearchUserInfo(String username,String password);
	public  List<RoleAndPow> SerachPower(Integer roleid);
	public  Boolean UpdateUser(UserInfo userInfo);
	 public  List<UserInfo> SearchUser(String username,String nickname);
	 public  List<Roles> SearchRoles(String rolename);
	 public Boolean DelUserInfo(String userid);
	 public Boolean DelRole(String roleid);
	 public Boolean DelUserRoleID(String roleid);
	 public  Boolean UpdateRoleInfo(Roles roles);
	 public  Boolean CheckUserInfoRoID(String roleid);
	 public  Boolean AddXmqk(Xmqk01 xmqk01);
	 public Boolean AddXmqk(Xmqk01New xmqk01,List<Zjpf01> zjpfList,List<Cjdw01> cjdwList, List<ZHD01> zhdList);
	 public  List<Xmqk01> SerachXmqk01(String xmqk01003,String xmqk01005,String xmqk01006,String minfy,String maxfy,String minjgtime,String maxjgtime,String xmqk01009);
	 public  Boolean DelXmqk(String xmqk01001);
	 public  Boolean UpdateXmqk(Xmqk01 xmqk01);
	 public  List<Power> SearchFunction(Integer roleid,Integer functionid);
	 public Boolean checkXmqkInfo(String xmName);
	 public Boolean checkXmqkInfoExceptId(String xmName,int xmId);
	 public Boolean updateWpfj(String wpfj0101,String wpfj0106,String type);
	 public Boolean updateXmfj(String xmfj0101,String xmfj0106,String type);
	 public List<Xmfj01> SearchXmfj(String xmName,String  fjName,String wdType,String wdsubType);
	 public String SearchXmqk01(xmqkQueryObj obj);
	 public String SearchXmqkDetailsById(String id);
	 public boolean deleteCjdwById(String id);
	 public boolean deleteZjpfById(String id);
	 public boolean deleteZhdById(String id);
	 public String searchWptjByWpbgId(String id);
	 public boolean updateXmqk01ForOneToMany(Xmqk01New xmqk01,List<Zjpf01> zjpfList,List<Cjdw01> cjdwList, List<ZHD01> zhdList);
	 public String statXmqk01(xmqkQueryObj obj);
}
